home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Die Speccy' 97
/
Die Speccy' 97.iso
/
amiga_system
/
the_aminet
/
dev
/
lang
/
fpl_v13_8.lha
/
fpl
/
README
< prev
Wrap
Text File
|
1995-02-19
|
4KB
|
124 lines
fpl.library v11
===============
Frexx Programming Language (FPL) is an interpreting script/macro language
shared library, designed to be flexible and easy inserted in any code.
FPL is a complete script programming language _very_ similar to C. If you
are a software developer and plans to add any kind of macro/script control,
consider the FPL alternative!
FPL library lets the software programmer define functions and variables that
FPL should accept. The library will call a function in the software whenever
any of these functions are used or variables are read in an FPL program.
The programming language features include:
o Full ANSI C syntax statements with semicolon separations.
o String, integer/long, char and short variables, including
multidimensional arrays.
o 100% ANSI C operator precedence and expression syntax.
o C and C++ style comments.
o A subset of the ANSI C function declaration and prototyping syntax and
concepts. The use of functions is exactly as C.
o Fully recursive, fully re-entrant.
o Local/global variable levels just as in ANSI C. Global variables can be
global within this particular file, or cross-file.
o As an extension to C, local and global functions. Global functions can
also be either system-wide or single file accessible.
o Enhanced (from ANSI C) array compound assigns.
o while, for, if, do, break, continue, else, int, exit, char, long,
register, auto, volatile, typedef, const and return are 100% ANSI C
compatible. 'while' has been extended with an 'else' support and 'break'
with a multi level break option.
o Octal, decimal, binary and decimal numbers are all easily used and mixed
as in C; and for those parts not existing in C, likewise syntax.
o A number of internal functions which include: strcmp, strncmp, strstr,
atoi, strtol, strlen, abs, sprintf and the FPL specific substr, eval,
ltostr and interpret!
o Supports the preprocessor instruction "#line" enabling FPL to run
common C preprocessor output.
o Some variable reference/pointer support like that C has!
Library features include:
o Interpreting common ASCII text files. Create the programs in your
favourite editor.
o 100% real-time.
o Using an own stack without charging the host process' stack, including
extensive and exclusive stack expanding possibilies, controllable by the
library programmer.
o Full function argument parsing, you don't have to do more than reading
them from the array FPL supplies you with.
o Easily compiled to a shared library under AmigaDOS, UNIX and OS/2.
Compiled to link library under any modern operating system featuring an
ANSI C compiler. (It has beeen successfully compiled under AIX, SunOS,
Dell UNIX, HPUX and OS/2.)
o Source code available enables fast ports to other operating systems.
o FPL library is around 45KB (amiga version)/65KB (OS/2 version).
o Very dynamic function adding and deleting possibilities.
o Dynamic program design. Small FPL programs will demand very little memory
to run.
o Demands less additional code than ARexx equivalences.
o All library functions are fully re-entrant.
o Deals with direct function calls instead of message port overhead, but
can easlily be made to do so if wanted.
o Resource tracking. All memory used/allocated by FPL is ALWAYS returned
when calling FPL's cleanup routine.
o Multi source file system. Declare and write functions in any number of
files and call cross-file! FPL keeps track of the files and can be made
to flush all files not in use.
o Invoking single, already declared/defined, FPL functions from another
FPL invoke is intuitive and easy done.
o Internal functions can be replaced by user functions.
o Runs on AmigaDOS 1.3 and later.
Package advantages:
o FPL is freeware! Use it for free.
o Includes an example program that interprets a common C language expression
from the command line.
o ~200 KB documentation in amigaguide format (+ clean ASCII versions)
FPL is Copyright (C) 1992-1995 by FrexxWare and freely distributable for
NON-COMMERCIAL PURPOSES ONLY, including extensive documentation and source
code.
Author:
Daniel Stenberg
Ankdammsgatan 36, 4tr
S-171 43 SOLNA
FidoNet 2:201/328
email: Daniel.Stenberg@sth.frontec.se